InterBase+IBQuery
Otázka od: Otruba Vladimir ml.
29. 7. 2004 9:41
Zdravim
S databazi zacinam, takze nejspis lama dotaz:
Pokud si DBGrid napojim na Table, muzu data bez problemu editovat. Pokud
vsak Grida napojim na IBQuery, nebo IBDataSet tak
to nejde. Muzete poradit??
Delphi 5 Pro. Win98, IB v 5.5.0.
Diky moc, Vlada.
Odpovedá: Otisk Rene
29. 7. 2004 9:17
Needitovat data v Gridu ale pres SQL prikazy resp ulozene procedury...
Sroub
S databazi zacinam, takze nejspis lama dotaz:
Pokud si DBGrid napojim na Table, muzu data bez problemu editovat. Pokud
vsak Grida napojim na IBQuery, nebo IBDataSet tak
to nejde. Muzete poradit??
Odpovedá: Martin Bednar
29. 7. 2004 9:21
OVm> Pokud si DBGrid napojim na Table, muzu data bez problemu editovat. Pokud
OVm> vsak Grida napojim na IBQuery, nebo IBDataSet tak
OVm> to nejde. Muzete poradit??
To je v poradku. IBQuery "pouze" vraci data ze serveru, ktera nejdou
primo editovat, je nutne editaci obslozit sam a do IBQuery.sql vlozit
primo sql prikaz INSERT INTO table .....
V IBDatasetu je to mirne jednodussi jen je treba vyplnit i dalsi
property napr.
IBDataset.InsertSQL, IBDataSet.RefreshSQL ....., pote je mozno primo
napojit trebas DBGrid a primo editovat.
Odpovedá: Karel Rys
29. 7. 2004 9:28
Otruba Vladimir ml. dne 29 Jul 2004 v 9:59:
> S databazi zacinam, takze nejspis lama dotaz:
> Pokud si DBGrid napojim na Table, muzu data bez problemu editovat.
> Pokud vsak Grida napojim na IBQuery, nebo IBDataSet tak to nejde.
> Muzete poradit??
IBQuery standardne editovat nepujde.
IBDataSet pujde, ale musis si na nej kliknout pravym, dat asi druhy prikaz
odzhora, ktery si ted
nevybavuju (neco jako edit dataset apod.) a nechat vygenerovat dodatecne
SQL dotazy k nemu
(pro refresh, insert, delete, modify). Obvykle pak RefreshSQL jeste musim
editovat rucne.
Karel Rys
Odpovedá: Peter Ondras
29. 7. 2004 10:17
Musis pridat k IBQuery este IBUpdateObject a vyplnit vsetky SQL prikazy
ktore na nom su. Potom mozes IBQuery pouzivat rovnako ako tabulku
(Query.Append (Edit), Query.Post) a o vsetko sa postara na pozadi
UpdateObject.
K tomu pridavam ukazku vyplnenia jednotlivych SQL (prebrate z archivu
konfery):
SelectSQL:
SELECT
KLIC, X, Y
FROM
TABULKA
InsertSQL:
INSERT INTO TABULKA
(KLIC, X, Y)
VALUES
(:KLIC, :X, :Y)
ModifySQL:
UPDATE TABULKA SET
X = :X,
Y = :Y
WHERE
KLIC = :OLD_KLIC
DeleteSQL:
DELETE FROM TABULKA
WHERE
KLIC = :OLD_KLIC
RefreshSQL
SELECT
KLIC, X, Y
FROM
TABULKA
WHERE
KLIC = :OLD_KLIC
kde plati, ze:
TABULKA je nejaka tabulka do se dotazujes
KLIC je jeji primarni klic (proto ho neupdatuju, to se primarnim klicum
nedela
X a Y jsou nejake dalsi sloupce
> -----Original Message-----
>
> S databazi zacinam, takze nejspis lama dotaz:
> Pokud si DBGrid napojim na Table, muzu data bez problemu editovat.
Pokud
> vsak Grida napojim na IBQuery, nebo IBDataSet tak
> to nejde. Muzete poradit??
Odpovedá: Lahoda Radek
29. 7. 2004 10:48
a da se nejak udelat dva dotazy pri editovani, jeden modify a druhy insert
do tabulky zurnalu? diky
Radek Lahoda
----- Puvodni zprava -----
Od: "Peter Ondras" <peter.ondras@pse.sk>
> Musis pridat k IBQuery este IBUpdateObject a vyplnit vsetky SQL prikazy
> ktore na nom su. Potom mozes IBQuery pouzivat rovnako ako tabulku
> (Query.Append (Edit), Query.Post) a o vsetko sa postara na pozadi
> UpdateObject.
>
> K tomu pridavam ukazku vyplnenia jednotlivych SQL (prebrate z archivu
> konfery):
>
Odpovedá: Milan Tomes
29. 7. 2004 12:05
IMHO je tohle lepsi resit triggerem... Je to potom vcelku bez prace...
S pozdravem
Milan Tomes
> [mailto:delphi-l-owner@clexpert.cz]On Behalf Of Lahoda Radek
> Sent: Thursday, July 29, 2004 11:48 AM
>
> a da se nejak udelat dva dotazy pri editovani, jeden modify a druhy insert
> do tabulky zurnalu? diky
Odpovedá: Marian Nykel
29. 7. 2004 11:23
Ahoj,
ja resim praci s IB pres IBSQL:
- IBSQL.Sql.Text := '...';
IBSQL.ExecQuery;
... zpracuju vysledky
IBSQL.Close;
a hotovo...
Mozna vice kodu, ale zase je resitelne libovolne zadani a vse je
jednoduse pod kontrolou.
mANY
Lahoda Radek wrote:
>a da se nejak udelat dva dotazy pri editovani, jeden modify a druhy insert
>do tabulky zurnalu? diky
>
>Radek Lahoda
>
>
>----- Puvodni zprava -----
>Od: "Peter Ondras" <peter.ondras@pse.sk>
>
>
>
>
>>Musis pridat k IBQuery este IBUpdateObject a vyplnit vsetky SQL prikazy
>>ktore na nom su. Potom mozes IBQuery pouzivat rovnako ako tabulku
>>(Query.Append (Edit), Query.Post) a o vsetko sa postara na pozadi
>>UpdateObject.
>>
>>K tomu pridavam ukazku vyplnenia jednotlivych SQL (prebrate z archivu
>>konfery):
>>
>>
>>
>
>
>
>
>
>
>
>
Odpovedá: Peter Ondras
29. 7. 2004 12:06
Pri pouziti IBQuery sice mozes urobit niekolko SQL naraz, ale vzdy sa
splni len to, ktore vyplnie z akcie IBQuery (napr. Query.Insert alebo
Query.Edit - tazko urobis obe naraz). Ked chces viac SQL (insert aj
modify) tak musis pouzit IBSQL a robit ExecQuery. Ako niekto pisal je s
tym viac prace, ale urobis vsetko co si vymyslis.
> -----Original Message-----
>
> a da se nejak udelat dva dotazy pri editovani, jeden modify a druhy
insert
> do tabulky zurnalu? diky